[6.15.z] Fix getting exit code on capsule tunnel error #14823
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Cherrypick of PR: #14821
Problem Statement
There is a problem with capsule tunnel error handling. It throws
TypeError: 'int' object is not subscriptable
. By checking ssh2.channel.Channel.get_exit_status documentation it is obvious thatchannel.get_exit_status()[1]
could never work since it was added.Solution
Replace
channel.get_exit_status()
bychannel.get_exit_signal()
which is way more verbose providing not only return code but also error message and exit signal.Related Issues